/**
 * Copyright (C) 2014 Domon.Xie All Rights Reserved.
 *
 * DbNameGenerator.java
 * 2014年10月26日 下午4:58:26
 */
package org.domon.mybatis.sql;

import org.domon.mybatis.bind.ModelRegistry;

/**
 * 数据库名解析器
 * 
 * @author Domon.Xie
 * 
 */
public interface DbNameGenerator {

    public final String UNDER_LINE = "_";

    public final String DB_VALUE = "#{?}";

    /**
     * 初始化SQL
     * 
     * @param beanClass
     *            表对应java model
     * @param modelRegistry
     *            SQL注册中心
     */
    public void initializeAllSQL(Class<?> beanClass, ModelRegistry modelRegistry);

    /**
     * 生成model的update sql
     * 
     * @param beanClass
     * @param fieldNames
     */
    public String generateUpdateSql(ModelRegistry modelRegistry, Class<?> beanClass, String[] fieldNames);
}
